package com.ruicar.afs.cloud.product.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruicar.afs.cloud.common.core.util.IResponse;
import com.ruicar.afs.cloud.product.condition.ProductPlanCondition;
import com.ruicar.afs.cloud.product.condition.ProductPrototypeCondition;
import com.ruicar.afs.cloud.product.dto.CheckProductInfoDto;
import com.ruicar.afs.cloud.product.entity.ProductPlan;
import com.ruicar.afs.cloud.product.vo.ProductPlanVo;
import com.ruicar.afs.cloud.product.vo.ProductPrototypeVo;

import java.util.List;
import java.util.Map;

/**
 * @author changyu.gui
 * @version 1.0
 * @date 2020/5/11 20:48
 */
public interface ProductPlanService extends IService<ProductPlan> {
    List<ProductPlanVo> getVueInfo(ProductPlanCondition planCondition);

    IPage<ProductPrototypeVo> queryProductPrototypeList(Page page, ProductPlanCondition planCondition);

    Map getProductDetails(CheckProductInfoDto info);

    IPage<ProductPlan> getProductPlanListByLaunch(CheckProductInfoDto info);

    List<String> checkProductInfo(CheckProductInfoDto info);

    JSONObject getcustomerrate(CheckProductInfoDto info);

    List<String> chenkRiskInfo(CheckProductInfoDto info);
    IResponse saveOrUpdate(ProductPrototypeCondition prototypeCondition);

    void sendAlterDealerMq(Long id);

    public void timingTaskProductOffline();

}
